package com.tbsoft.ehr.service.user;

import java.util.List;

import com.tbsoft.ehr.login.RoleInfo;
import com.tbsoft.ehr.login.UserInfo;
import com.tbsoft.ehr.service.BaseService;
/**
 * @desc 用户管理
 * @author vidy
 *
 */
public interface UserService extends BaseService{
	/**
	 * @desc 根据条件查询用户
	 * @param user
	 * @param startIndex
	 * @param count
	 * @return
	 */
	public List<UserInfo> getUserList(UserInfo user,int startIndex,int count);
	/**
	 * @desc 根据条件查询用户数量
	 * @param user
	 * @return
	 */
	public int getUserCount(UserInfo user);
	/**
	 * @desc 保存用户 
	 * @param user
	 */
	public void saveUser(UserInfo user,List<String> roleIdList);
	
	/**
	 * 修改密码
	 * @param user
	 */
	public void updateUserPwd(UserInfo user);
	
	/**
	 * @desc 根据id获取用户信息
	 * @param userId
	 * @return
	 */
	public UserInfo getUser(String userId);
	/**
	 * 获取加密后的密码串
	 * @param pwd
	 * @return
	 */
	String getDecodePassword(String pwd);
	/**
	 * @desc 删除用户
	 * @param user
	 */
	public void deleteUser(UserInfo user);
	/**
	 * @desc 查询所有角色信息
	 * @return
	 */
	public List<RoleInfo> getAllRoleList();
	/**
	 * @desc 保存用户角色信息
	 * @param userId
	 * @param roleIdList
	 */
	public void saveUserRole(String userId,List<String> roleIdList);
}
